/**
 * Copyright ToFBA Ecommerce Logistics LTD. All Rights Reserved.
 *
 * This software is the confidential and proprietary information of
 * Shenzhen ToFBA Ecommerce Logistics Co. Ltd.
 * No body can copy or modify any part of this source without the permission of
 * Shenzhen ToFBA Ecommerce Logistics Co. Ltd.
 *   _________    ___   ________  ______        _       
 *  |  _   _  | .'   `.|_   __  ||_   _ \      / \      
 *  |_/ | | \_|/  .-.  \ | |_ \_|  | |_) |    / _ \     
 *      | |    | |   | | |  _|     |  __'.   / ___ \    
 *     _| |_   \  `-'  /_| |_     _| |__) |_/ /   \ \_  
 *    |_____|   `.___.'|_____|   |_______/|____| |____|
 *                                                
 */
package com.lmexpress.orm.hualei;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * <华磊订单实体>
 * 
 * @author Henry(fba02)
 * @version [版本号, 2020-10-16]
 * @see [相关类/方法]
 * @since [产品/模块版本]
 */
@SuppressWarnings("serial")
public class HLOrder implements Serializable {    
    private String token;// token
    private String buyerid;    
    private String order_returnsign;// 退回标志默认N表示不退回Y标表示退回.中邮可以忽略该属性    
    private String order_customerinvoicecode;// 原单号必填    
    private String trade_type;//  
    private String country;// 收件国家二字代码必填
    
    // ------------------------------------------------ 用户信息selectAuth接口取得
    private Integer customer_id;// 客户ID必填    
    private Integer customer_userid;// 登录人ID必填 
    
    private String customerCode;// 客户编码,新增
    
    // ------------------------------------------------ 渠道信息getProductList接口取得
    private String product_id;// 运输方式ID必填
    private String productCode;// 
    
    // ------------------------------------------------ 产品信息
    private Double weight;// 总重选填如果SKU上有单重可不填该项   
    private Integer order_piece;// 件数
    private String product_imagepath;// 图片地址多图片地址用分号隔开    
    private String order_transactionurl;// 产品销售地址
    private String tracking_number;// 追踪号
    
    // ------------------------------------------------ 代收货款业务
    private Double order_codamount;// 代收金额    
    private String order_codcurrency;// 币种,标准三字代码    
    private Double order_cargoamount;// 订单实际金额用于白关申报    
    private Double order_insurance;// 保险金额
    
    // ------------------------------------------------ 收件人信息
    private String consignee_name;// 收件人必填
    private String consignee_address;// 收件地址街道必填    
    private String consignee_city;// 城市    
    private String consignee_mobile;// 手机号选填,为方便派送最好填写   
    private String consignee_postcode;// 邮编有邮编的国家必填    
    private String consignee_state;// 州/省    
    private String consignee_telephone;// 收件电话必填    
    private String consignee_email;// 邮箱选填
    private String consignee_companyname;// 收件公司名如有最好填写    
    
    // ------------------------------------------------ 发件人信息
    private String shipper_name;// 发件人姓名选填   
    private String shipper_companyname;// 发件人公司名选填  
    private String shipper_address1;// 发件人地址1,选填
    private String shipper_address2;// 发件人地址2选填    
    private String shipper_address3;// 发件人地址3选填  
    private String shipper_city;// 发件人城市,选填 
    private String shipper_state;// 发件人州,选填   
    private String shipper_postcode;// 发件人邮编选填   
    private String shipper_country;// 发件人国家,选填  
    private String shipper_telephone;// 发件人电话,选填
    private String order_customnote;
    
    private List<OrderInvoiceParam> orderInvoiceParam;
    private List<OrderVolumeParam> orderVolumeParam;
    
    private Map<String, Object> extraAttributes;// 拓展属性,后续拓展属性以key-value形式存储于此字段传递
    
    public String getBuyerid() {
        return buyerid;
    }

    public void setBuyerid(String buyerid) {
        this.buyerid = buyerid;
    }

    public String getOrder_returnsign() {
        return order_returnsign;
    }
    
    public void setOrder_returnsign(String order_returnsign) {
        this.order_returnsign = order_returnsign;
    }
    
    public String getOrder_customerinvoicecode() {
        return order_customerinvoicecode;
    }
    
    public void setOrder_customerinvoicecode(String order_customerinvoicecode) {
        this.order_customerinvoicecode = order_customerinvoicecode;
    }
    
    public String getTrade_type() {
        return trade_type;
    }
    
    public void setTrade_type(String trade_type) {
        this.trade_type = trade_type;
    }
    
    public String getCountry() {
        return country;
    }
    
    public void setCountry(String country) {
        this.country = country;
    }
    
    public Integer getCustomer_id() {
        return customer_id;
    }
    
    public void setCustomer_id(Integer customer_id) {
        this.customer_id = customer_id;
    }
    
    public Integer getCustomer_userid() {
        return customer_userid;
    }
    
    public void setCustomer_userid(Integer customer_userid) {
        this.customer_userid = customer_userid;
    }

    public Double getWeight() {
        return weight;
    }
    
    public void setWeight(Double weight) {
        this.weight = weight;
    }
    
    public String getProduct_imagepath() {
        return product_imagepath;
    }
    
    public void setProduct_imagepath(String product_imagepath) {
        this.product_imagepath = product_imagepath;
    }
    
    public String getOrder_transactionurl() {
        return order_transactionurl;
    }
    
    public void setOrder_transactionurl(String order_transactionurl) {
        this.order_transactionurl = order_transactionurl;
    }
    
    public List<OrderInvoiceParam> getOrderInvoiceParam() {
        return orderInvoiceParam;
    }
    
    public void setOrderInvoiceParam(List<OrderInvoiceParam> orderInvoiceParam) {
        this.orderInvoiceParam = orderInvoiceParam;
    }
    
    public Double getOrder_codamount() {
        return order_codamount;
    }
    
    public void setOrder_codamount(Double order_codamount) {
        this.order_codamount = order_codamount;
    }
    
    public String getOrder_codcurrency() {
        return order_codcurrency;
    }
    
    public void setOrder_codcurrency(String order_codcurrency) {
        this.order_codcurrency = order_codcurrency;
    }
    
    public Double getOrder_cargoamount() {
        return order_cargoamount;
    }
    
    public void setOrder_cargoamount(Double order_cargoamount) {
        this.order_cargoamount = order_cargoamount;
    }
    
    public Double getOrder_insurance() {
        return order_insurance;
    }
    
    public void setOrder_insurance(Double order_insurance) {
        this.order_insurance = order_insurance;
    }
    
    public String getConsignee_name() {
        return consignee_name;
    }
    
    public void setConsignee_name(String consignee_name) {
        this.consignee_name = consignee_name;
    }
    
    public String getConsignee_address() {
        return consignee_address;
    }
    
    public void setConsignee_address(String consignee_address) {
        this.consignee_address = consignee_address;
    }
    
    public String getConsignee_city() {
        return consignee_city;
    }
    
    public void setConsignee_city(String consignee_city) {
        this.consignee_city = consignee_city;
    }
    
    public String getConsignee_mobile() {
        return consignee_mobile;
    }
    
    public void setConsignee_mobile(String consignee_mobile) {
        this.consignee_mobile = consignee_mobile;
    }
    
    public String getConsignee_postcode() {
        return consignee_postcode;
    }
    
    public void setConsignee_postcode(String consignee_postcode) {
        this.consignee_postcode = consignee_postcode;
    }
    
    public String getConsignee_state() {
        return consignee_state;
    }
    
    public void setConsignee_state(String consignee_state) {
        this.consignee_state = consignee_state;
    }
    
    public String getConsignee_telephone() {
        return consignee_telephone;
    }
    
    public void setConsignee_telephone(String consignee_telephone) {
        this.consignee_telephone = consignee_telephone;
    }
    
    public String getConsignee_email() {
        return consignee_email;
    }
    
    public void setConsignee_email(String consignee_email) {
        this.consignee_email = consignee_email;
    }
    
    public String getConsignee_companyname() {
        return consignee_companyname;
    }
    
    public void setConsignee_companyname(String consignee_companyname) {
        this.consignee_companyname = consignee_companyname;
    }
    
    public String getShipper_name() {
        return shipper_name;
    }
    
    public void setShipper_name(String shipper_name) {
        this.shipper_name = shipper_name;
    }
    
    public String getShipper_companyname() {
        return shipper_companyname;
    }
    
    public void setShipper_companyname(String shipper_companyname) {
        this.shipper_companyname = shipper_companyname;
    }
    
    public String getShipper_address1() {
        return shipper_address1;
    }
    
    public void setShipper_address1(String shipper_address1) {
        this.shipper_address1 = shipper_address1;
    }
    
    public String getShipper_address2() {
        return shipper_address2;
    }
    
    public void setShipper_address2(String shipper_address2) {
        this.shipper_address2 = shipper_address2;
    }
    
    public String getShipper_address3() {
        return shipper_address3;
    }
    
    public void setShipper_address3(String shipper_address3) {
        this.shipper_address3 = shipper_address3;
    }
    
    public String getShipper_city() {
        return shipper_city;
    }
    
    public void setShipper_city(String shipper_city) {
        this.shipper_city = shipper_city;
    }
    
    public String getShipper_state() {
        return shipper_state;
    }
    
    public void setShipper_state(String shipper_state) {
        this.shipper_state = shipper_state;
    }
    
    public String getShipper_postcode() {
        return shipper_postcode;
    }
    
    public void setShipper_postcode(String shipper_postcode) {
        this.shipper_postcode = shipper_postcode;
    }
    
    public String getShipper_country() {
        return shipper_country;
    }
    
    public void setShipper_country(String shipper_country) {
        this.shipper_country = shipper_country;
    }
    
    public String getShipper_telephone() {
        return shipper_telephone;
    }
    
    public void setShipper_telephone(String shipper_telephone) {
        this.shipper_telephone = shipper_telephone;
    }
    
    public String getProduct_id() {
        return product_id;
    }

    public void setProduct_id(String product_id) {
        this.product_id = product_id;
    }

    public List<OrderVolumeParam> getOrderVolumeParam() {
        return orderVolumeParam;
    }

    public void setOrderVolumeParam(List<OrderVolumeParam> orderVolumeParam) {
        this.orderVolumeParam = orderVolumeParam;
    }

    public Map<String, Object> getExtraAttributes() {
        return extraAttributes;
    }

    public void setExtraAttributes(Map<String, Object> extraAttributes) {
        this.extraAttributes = extraAttributes;
    }

    public String getToken() {
        return token;
    }

    public void setToken(String token) {
        this.token = token;
    }

    public String getTracking_number() {
        return tracking_number;
    }

    public void setTracking_number(String tracking_number) {
        this.tracking_number = tracking_number;
    }
    
    public Integer getOrder_piece() {
        return order_piece;
    }

    public void setOrder_piece(Integer order_piece) {
        this.order_piece = order_piece;
    }



    public String getCustomerCode() {
        return customerCode;
    }

    public void setCustomerCode(String customerCode) {
        this.customerCode = customerCode;
    }

    public String getOrder_customnote() {
        return order_customnote;
    }

    public void setOrder_customnote(String order_customnote) {
        this.order_customnote = order_customnote;
    }

    public String getProductCode() {
        return productCode;
    }

    public void setProductCode(String productCode) {
        this.productCode = productCode;
    }

    @Override
    public String toString() {
        return "HLOrder [token=" + token + ", buyerid=" + buyerid + ", order_returnsign=" + order_returnsign + ", order_customerinvoicecode=" + order_customerinvoicecode + ", trade_type=" + trade_type + ", country=" + country + ", customer_id=" + customer_id + ", customer_userid=" + customer_userid + ", customerCode=" + customerCode + ", product_id=" + product_id + ", productCode=" + productCode + ", weight=" + weight + ", order_piece=" + order_piece + ", product_imagepath=" + product_imagepath
            + ", order_transactionurl=" + order_transactionurl + ", tracking_number=" + tracking_number + ", order_codamount=" + order_codamount + ", order_codcurrency=" + order_codcurrency + ", order_cargoamount=" + order_cargoamount + ", order_insurance=" + order_insurance + ", consignee_name=" + consignee_name + ", consignee_address=" + consignee_address + ", consignee_city=" + consignee_city + ", consignee_mobile=" + consignee_mobile + ", consignee_postcode=" + consignee_postcode + ", consignee_state="
            + consignee_state + ", consignee_telephone=" + consignee_telephone + ", consignee_email=" + consignee_email + ", consignee_companyname=" + consignee_companyname + ", shipper_name=" + shipper_name + ", shipper_companyname=" + shipper_companyname + ", shipper_address1=" + shipper_address1 + ", shipper_address2=" + shipper_address2 + ", shipper_address3=" + shipper_address3 + ", shipper_city=" + shipper_city + ", shipper_state=" + shipper_state + ", shipper_postcode=" + shipper_postcode
            + ", shipper_country=" + shipper_country + ", shipper_telephone=" + shipper_telephone + ", order_customnote=" + order_customnote + ", orderInvoiceParam=" + orderInvoiceParam + ", orderVolumeParam=" + orderVolumeParam + ", extraAttributes=" + extraAttributes + "]";
    }
}